سلام خدمت مهندسان عزیز
یک مشکلی که در اکثر سیستم عامل ها هست هنوز بعضی از صفحه کلید های ویندوز های قدیمی استاندارد نیست و ی و ک عربی وارد میکنند («ک» و «ی»)
من میخوام توی TextBox که کاربر وارد میکنه توی Event KeyDown
وقتی کاربر ی عبری زد اون رو تبدیل به ی فارسی کنم این کار رو توی WindowsForm توی Event Keychar انجام دادم به این صورت :
if (e.KeyChar.ToString() == "ی")
{
e.KeyChar = Convert.ToChar("ی");
}
اما کد بالا در WPF اصلا کار نمی کند و خطا میدهد
و Event KeyChar توی WPF نیست چطور این کد بالا رو توی WPF استفاده کنم
لطفا راهنمایی بفرمایید
باتشکر
دستوراتی که برای تبدیل حروف عربی به فارسی در ویندوز فرم نوشتید درسته. اما توی WPF کمی برخی از دستورات تغییر کردن. شما میتونید کدهای زیر رو جایگزین کدهای خودتون کنید.
private void txt_name_KeyDown(object sender, KeyEventArgs e)
{
if (e.Key.ToString() == "ي")
{
e.Key.ToString("ی");
}
}
دقت کنید که در WPF در EventHandler با نام e به جای keychar باید از key استفاده کنید.
ضمنا توی دیتابیس هم Collation رو حتما Persian قرار بدید. اگر شما Collation دیتابیس خودتون رو فارسی قرار بدید این مشکل خودش حل میشه.
مشکل حل نـشد
ببخشید ببینید این کد نمیاد کاراکتر وارد شده رو تبدیل کنه فقط میاد کلیدی که روی صفحه کلید وارد شده رو میگه : ↓
نمونه کدی که توی ویندوز فرم نوشتم درسته ولی توی WPF نمیدونم چجوری این کار رو انجام بدم
لطفا راهنمایی بفرمایید
در WPF مثل Windows Form شما نمیتونید مقدار کلیدی که فشرده شده رو دریافت کنید و روش تغییراتی رو انجام بدید. به نظرم تنظیمات ویندوز رو Persian کنید تا این مشکل پیش نیاد. ضمنا اگر Collation دیتابیس شما Persian باشه هم مشکلی پیش نمیاد. ضمنا توی دیتابیس میشه با یه دستور خیلی ساده همه "ي" را به "ی" تبدیل کرد.
ولی در هر صورت میتونید برای انجام این کار توی WPF این لینک رو مطالعه کنید. تقریبا بهترین منبع برای کار شما همین لینک هست.
موفق باشید
متشکرم جناب مهندس
ولی اکثر مشتریان اصلا حوصله انجام دادن هیچ تنظیمی روی سیستمشون ندارن
تغییر کارکتر ها بعد از ذخیره شدن شون توی دیتابیس دردسر سازه
هیچ راهی هست که بشه مثل ویندوز فرم کاراکتر ها رو از صفحه کلید گرفت ، فرض کنید میخوایم برنامه کیبورد مجازی ویندوز رو توی WPF بنویسیم
🙏
تاریخ :
1401/02/24
- ساعت :
02:17:00 PM
- بازدید :
2006
- پاسخ :
1
|
تاریخ :
1402/07/23
- ساعت :
04:01:00 PM
- بازدید :
1033
- پاسخ :
1
|
تاریخ :
1402/09/08
- ساعت :
07:34:00 PM
- بازدید :
1160
- پاسخ :
1
|
تاریخ :
1402/09/21
- ساعت :
11:10:00 PM
- بازدید :
597
- پاسخ :
1
|
تاریخ :
1403/07/13
- ساعت :
12:06:00 PM
- بازدید :
347
- پاسخ :
1
|
تاریخ :
1403/06/24
- ساعت :
08:52:00 PM
- بازدید :
317
- پاسخ :
1
|
تاریخ :
1398/09/14
- ساعت :
01:58:00 PM
- بازدید :
4268
- پاسخ :
1
|
تاریخ :
1398/09/16
- ساعت :
11:41:00 AM
- بازدید :
4281
- پاسخ :
1
|
تاریخ :
1398/09/07
- ساعت :
02:15:00 PM
- بازدید :
3875
- پاسخ :
5
|
تاریخ :
1403/05/16
- ساعت :
05:43:00 AM
- بازدید :
658
- پاسخ :
0
|
تاریخ :
1401/02/24
- ساعت :
02:17:00 PM
- بازدید :
2006
- پاسخ :
1
|
تاریخ :
1403/08/29
- ساعت :
07:15:00 PM
- بازدید :
72
- پاسخ :
0
|
تاریخ :
1403/08/18
- ساعت :
10:40:00 AM
- بازدید :
107
- پاسخ :
0
|
تاریخ :
1402/07/23
- ساعت :
04:01:00 PM
- بازدید :
1033
- پاسخ :
1
|
تاریخ :
1403/05/30
- ساعت :
09:22:00 AM
- بازدید :
427
- پاسخ :
1
|
تاریخ :
1402/08/01
- ساعت :
06:25:00 PM
- بازدید :
930
- پاسخ :
1
|
تاریخ :
1402/08/16
- ساعت :
10:38:00 AM
- بازدید :
1356
- پاسخ :
1
|
تاریخ :
1398/08/17
- ساعت :
01:27:00 AM
- بازدید :
4797
- پاسخ :
1
|
تاریخ :
1402/09/08
- ساعت :
07:34:00 PM
- بازدید :
1160
- پاسخ :
1
|
تاریخ :
1402/09/21
- ساعت :
11:10:00 PM
- بازدید :
597
- پاسخ :
1
|